package com.wicket.okrapp.integration.dto;

import com.wicket.okrapp.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc UpdateProjectBusinessProcessingComReqDto
 * @使用场景
 */
@Data
public class UpdateProjectBusinessProcessingComReqDto
  extends BaseDto
  implements Serializable {

  /**
   * 项目ID
   */
  @NotNull(message = "项目ID不能为空")
  @ApiModelProperty("项目ID")
  private String projectId;

  /**
   * 项目编号
   */
  @ApiModelProperty("项目编号")
  private String projectNumber;

  /**
   * 项目名称
   */
  @ApiModelProperty("项目名称")
  private String projectName;

  /**
   * 项目logo
   */
  @ApiModelProperty("项目logo")
  private String projectLogo;

  /**
   * 项目文字描述
   */
  @ApiModelProperty("项目文字描述")
  private String projectDesc;

  /**
   * 项目图片描述
   */
  @ApiModelProperty("项目图片描述")
  private String projectImg;

  /**
   * 计划开始时间
   */
  @ApiModelProperty("计划开始时间")
  private Date planStartTime;

  /**
   * 计划结束时间
   */
  @ApiModelProperty("计划结束时间")
  private Date planEndTime;

  /**
   * 公文ID
   */
  @ApiModelProperty("公文ID")
  private String officialDocumentId;

  /**
   * 主体生命周期 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
   */
  @ApiModelProperty("主体生命周期")
  private String subjectLifeCycle;

  /**
   * 消息重要紧急度层级
   */
  @ApiModelProperty("消息重要紧急度层级")
  private Long messageImportantLevel;

  /**
   * 高/中/基层操作场景 TOP:高层 MID:中层 BASIC:基层 UCD:UCD框架
   */
  @ApiModelProperty("高/中/基层操作场景")
  private String batchOperateScene;

  /**
   * 业务操作类型编码 REPORT_UP:向上汇报 NOT_REPORT_UP:不向上汇报
   */
  @ApiModelProperty("业务操作类型编码")
  private String businessOperationTypeCode;

  /**
   * 分管领导就职记录ID
   */
  @ApiModelProperty("分管领导就职记录ID")
  private String deptLeaderInductionRecordId;

}
